Programmable remote controls have been provided for controlling more than one device. Such remote controls typically include mode buttons each of which corresponds to a component to be controlled, e.g., “TV”, “disk player”, “personal video record (PVR)”, etc. When a mode button is toggled by a user the remote control switches its command set, including communication codes, accordingly to correspond to the controlled features of the selected component.
Users must manually key in communication-related parameters and more particularly the communication codes associated with the components intended to be remotely controlled. This is necessary so that the remote control can generate command signals that are understood by the device to be controlled. But requiring users to manual key in codes is cumbersome, time-consuming, and can be confusing since the user typically does not receive feedback of whether the code was entered correctly until trying (and failing or not) to control the relevant component.